1. Field of the Invention
This invention relates to computer data storage systems. More particularly, this invention relates to archiving or backup systems for computer data storage systems.
2. Description of Related Art
Computer data storage systems such as storage area networks are well known in the art. Fundamentally, as shown in FIG. 1, a main processor or server computer 10 will have at least one main system disk 20a, 20b, . . . , 20n for storing or retaining non-volatile data. As data is created, it is stored on at least one of the disks 20a, 20b, . . . , 20n. In the prior art there is no automatic archiving of the data when the amount of data stored within the main storage disks 20a, 20b, . . . , 20n approaches the capacity of the main storage disks 20a, 20b, . . . , 20n. If the disks 20a, 20b, . . . , 20n reach capacity, the main processor may perform inadequately or even fail. Further is there is no notification to the user-owner of the data files when the quantity of data files present on the main storage disk 20a, 20b, . . . , 20n exceed the limit that allows efficient operation of the main processor 10. The operator or the user-owner of the disk is then forced to manually extract excess files from the main storage disks 20a, 20b, . . . , 20n and transfer the excess files through the backing storage controller 30 to the backing storage disks 35.
Generally, the user owner of the files present on the main storage disks 20a, 20b. . . , 20n is assigned storage directories on the backing storage disks 35. The owner then extracts the excess data files from the main storage disks 20a, 20b, . . . , 20n and places these excess files within the backing storage disks 35.
The backing store controller 30 normally provides the assignment of the directories within the backing storage disks 35 upon request, but does not provide notification if the assigned directories are nearing their assigned capacity. If the user-owner requests archiving of data files from the main storage disks 20a, 20b, . . . , 20n to directories of the backing storage disks 35 and the directories have insufficient space to accommodate the data files, the user-owner must request additional space within the directories or additional directories on the backing storage disks 35. The lack of automatic notification or automatic storage of files causes an increase in time and resources to prevent failure of the main processor 10 because of the main storage disks 20a, 20b, . . . , 20n have become full and have no additional space for storage of the data files.
U.S. Pat. No. 6,163,773 (Kishi) describes a data storage system where a cache is managed by a predictive cache management engine. The cache management engine evaluates cache contents and purges entries unlikely to receive sufficient future cache hits. The engine includes a single output back propagation neural network that is trained in response to various event triggers. The cache management engine operates the trained neural network to generate scores for cached data sets, these scores ranking the data sets relative to each other. The cache management engine reviews the scores, identifies one or more data sets with the least scores, and purges the identified data sets from the cache.
“Adaptive disk striping for parallel input/output,” Simitci, et al., 16th IEEE Symposium on Storage Systems, 1999, March 1999, San Diego, Calif., pp. 88–102, describes a fuzzy logic rule base for adaptive, redundant striping of files across multiple disks. This rule base is based on a queuing model of disk contention that includes file request sizes and disk hardware parameters. At low loads, the rule base stripes aggressively to minimize response time. As loads rise, it stripes less aggressively to maximize aggregate throughput.
“Xmas: An Extensible Main-Memory Storage System for High-Performance Applications,” Park, et al. Proceedings of ACM SIGMOD Conference, pp. 578–580, June 1998, describes Xmas, which is an extensible main-memory storage system for high-performance embedded database applications. The Xmas system utilizes “fuzzy checkpointing” to insure data concurrency within the storage system.
“High Speed On-line Backup When Using Logical Log Operations,” Lomet, Proceedings of ACM SIGMOD Conference, Dallas, Tex., May, 2000, describes a “full speed” backup system that is loosely coupled to the cache manager, and hence similar to current on-line backups, but effective for general logical log operations. “Fuzzy dumps” and “fuzzy checkpointing” are discussed for maintenance of data concurrency.
“SUMPY: A Fuzzy Software Agent” Song, et al., Proceedings of the ISCA Conference on Intelligent Systems, Reno Nev., June 1996. describes a software agent “living” in and helping to maintain a UNIX file system for better disk space utilization by compressing and backing up. Built using subsumption architecture, SUMPY displays a “plug and play” property. A new UNIX maintenance task can be added to SUMPY's repertoire without modification of existing layers. One layer of the software agent has a fuzzy control mechanism enabling it to achieve its goals in a real-world manner. The fuzzy controller decides whether a certain file in a particular user directory should be compressed or not. This decision is influenced by a series of input values coming from a set of sensors.